package com.hyt.it.ogt.ykcj.service.zs.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hyt.core.base.BaseEntity;
import com.hyt.it.ogt.ykcj.common.enums.zs.ImportParamStatusEnums;
import com.hyt.it.ogt.ykcj.common.enums.zs.TemplateRenderEnums;
import com.hyt.it.ogt.ykcj.common.enums.zs.TemplateShowViewEnums;
import com.hyt.it.ogt.ykcj.domain.zs.ZsTemplateConfig;
import com.hyt.it.ogt.ykcj.mapper.zs.ZsTemplateConfigMapper;
import com.hyt.it.ogt.ykcj.service.zs.IZsTemplateConfigService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 证书模板配置信息接口
 *
 * @author admin
 * @date 2021-08-10
 */
@Slf4j
@Service
public class ZsTemplateConfigServiceImpl extends ServiceImpl<ZsTemplateConfigMapper, ZsTemplateConfig> implements IZsTemplateConfigService {


    @Override
    public List<ZsTemplateConfig> listImportConfigByTemplate(String templateId) {
        return this.lambdaQuery()
                .eq(ZsTemplateConfig::getTemplateId, templateId)
                .eq(ZsTemplateConfig::getImportParam, ImportParamStatusEnums.YES.getBool())
                .eq(BaseEntity::getDelFlag, Boolean.FALSE)
                .orderByAsc(ZsTemplateConfig::getVariableSort)
                .list();
    }

    @Override
    public List<ZsTemplateConfig> listAllConfigByTemplate(String templateId) {
        return this.lambdaQuery()
                .eq(ZsTemplateConfig::getTemplateId, templateId)
                .eq(BaseEntity::getDelFlag, Boolean.FALSE)
                .orderByAsc(ZsTemplateConfig::getVariableSort)
                .list();
    }

    @Override
    public List<ZsTemplateConfig> listTemplateRenderConfig(String templateId) {
        return this.lambdaQuery()
                .eq(ZsTemplateConfig::getTemplateId, templateId)
                .eq(BaseEntity::getDelFlag, Boolean.FALSE)
                .eq(ZsTemplateConfig::getTemplateRender, TemplateRenderEnums.YES.getBool())
                .orderByAsc(ZsTemplateConfig::getVariableSort)
                .list();
    }

    @Override
    public List<ZsTemplateConfig> listShowViewConfig(String certificateTemplateId) {
        return this.lambdaQuery()
                .eq(ZsTemplateConfig::getTemplateId, certificateTemplateId)
                .eq(BaseEntity::getDelFlag, Boolean.FALSE)
                .eq(ZsTemplateConfig::getShowView, TemplateShowViewEnums.YES.getBool())
                .orderByAsc(ZsTemplateConfig::getVariableSort)
                .list();
    }
}
